#ifndef __TICLOG_H__
#define __TICLOG_H__

#include <ros/ros.h>
#include <fstream>
#include <pwd.h>
#include <sys/stat.h>
#include <dirent.h>
#include <fcntl.h>
#include <iostream>
#include <ctime>
#include <sys/types.h>
#include <unistd.h>
#include <string.h>
#include <sys/stat.h>

//保存日志目录的个数
#define LOG_SAVE_NUMBER  7

void ticSaveLogToFile(int8_t leve, const char *file, int line, const char *format, ...);

#define TIC_DEBUG(...)  {ticSaveLogToFile( 0, __FILE__, __LINE__, __VA_ARGS__); ROS_DEBUG(__VA_ARGS__);}
#define TIC_INFO(...)   {ticSaveLogToFile( 1, __FILE__, __LINE__, __VA_ARGS__); ROS_INFO(__VA_ARGS__) ;}
#define TIC_WARN(...)   {ticSaveLogToFile( 2, __FILE__, __LINE__, __VA_ARGS__); ROS_WARN(__VA_ARGS__) ;}
#define TIC_ERROR(...)  {ticSaveLogToFile( 3, __FILE__, __LINE__, __VA_ARGS__); ROS_ERROR(__VA_ARGS__);}
#define TIC_FATAL(...)  {ticSaveLogToFile( 4, __FILE__, __LINE__, __VA_ARGS__); ROS_FATAL(__VA_ARGS__);}

#endif
